package com.chenfan.filestore.dto;

import com.chenfan.filestore.enums.TaskTypeEnum;
import lombok.Data;

import java.util.Date;
import java.util.Map;

@Data
public class TaskDTO {

    // 模板code 创建任务时必传
    private String templateCode;

    //任务id
    private Long taskId;
    //任务名称
    private String taskName;
    //系统id
    private Long systemId;
    //模块id
    private Long moduleId;
    //任务类型 1 导出 2导入
    private Integer taskType = 1;
    //模板id
    private Long templateId;
    //最终执行sql
    private String sql;
    //下载文件名
    private String fileName;

    /**
     * 是否解析图片
     */
    private boolean showImage;

    //下载文件url
    private String downFileUrl;
    //总记录数
    private Long totalCount;
    //已处理记录数
    private Long alreadyCount;
    //执行开始时间
    private Date doTime;
    //执行结束时间
    private Date doneTime;
    //执行结果信息
    private String resultMsg;
    //执行异常堆栈
    private String stackTrace;
    //任务执行状态 0待执行 10执行中  20成功 30失败
    private Integer status;
    //是否删除 0未删除 1删除
    private Integer isDelete;
    //租户id
    private Long tenantId;
    //公司id
    private Long companyId;
    //创建人id
    private Long createBy;
    //创建人名称
    private String createName;
    //创建时间
    private Date createDate;
    //更新人
    private Long updateBy;
    //更新人名称
    private String updateName;
    //更新时间
    private Date updateDate;

    //模板中的请求参数
    private Object _PARAMS;

    //业务辅助数据
    private Object _DATAS;

    public boolean importTask() {
        return TaskTypeEnum.IMPORT.getCode().equals(taskType);
    }

    public boolean exportTask() {
        return TaskTypeEnum.EXPORT.getCode().equals(taskType);
    }
}
